package com.snpic.appaw.module.insure.dal.dataobject.carmessage;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;

import java.math.BigDecimal;
import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.*;
import com.snpic.appaw.framework.mybatis.core.dataobject.BaseDO;

/**
 * 车险出单-车辆信息 DO
 *
 * @author lqs
 */
@TableName("cx_car_message")
@KeySequence("cx_car_message_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class CarMessageDO extends BaseDO {

	/**
	 * ID
	 */
	@TableId
	private Long id;
	/**
	 * 唯一流水号
	 */
	private String sessionid;
	/**
	 * 城市代码
	 */
	private String citycode;
	/**
	 * 车辆Id
	 */
	private String vehicleid;
	/**
	 * 车辆品牌名称
	 */
	private String vehicleBrand;
	/**
	 * 车架号/VIN
	 */
	private String rackNo;
	/**
	 * 发动机号
	 */
	private String engineNo;
	/**
	 * 车辆购买价钱(含税)
	 */
	private BigDecimal vehicleValue;
	/**
	 * 车辆注册日期
	 */
	private LocalDateTime registerDate;
	/**
	 * 是否过户车，0否1 是
	 */
	private String transferFlag;
	/**
	 * 过户日期
	 */
	private LocalDateTime transferDate;
	/**
	 * 车辆座位数
	 */
	private Long seats;
	/**
	 * 引擎排量(升)
	 */
	private String enginecapacity;
	/**
	 * 号牌种类，枚举
	 */
	private String licensetype;
	/**
	 * 车辆实际价值
	 */
	private BigDecimal currentvalue;
	/**
	 * 车型产地；0-国产，1-合资，2-进口
	 */
	private String producingArea;
	/**
	 * 车型行业代码
	 */
	private String vehiclehyCode;
	/**
	 * 总行驶里程（新增）
	 */
	private String runMileRate;
	/**
	 * 车款名称（新增）|车型别名
	 */
	private String carName;
	/**
	 * 精友-车辆编码（新增）|本地车型代码
	 */
	private String jingyouVehicleCode;
	/**
	 * 精友-车型名称（新增）|品牌型号
	 */
	private String jingyouVehicleName;
	/**
	 * 精友-车价（新增）
	 */
	private String jingyouPrice;
	/**
	 * 精友-车系（新增）
	 */
	private String jingyouFamilyname;
	/**
	 * 公告型号（新增）|车系编码
	 */
	private String noticeType;
	/**
	 * 外地车标识
	 */
	private String ecDemicVehicleFlag;
	/**
	 * 整备质量
	 */
	private String wholeWeight;
	/**
	 * 能源种类名称
	 */
	private String fuelTypeName;
	/**
	 * 车辆来历凭证种类名称
	 */
	private String certificateTypeName;
	/**
	 * 车辆来历凭证编号
	 */
	private String certificateNo;
	/**
	 * 开具车辆来历凭证所载日期
	 */
	private LocalDateTime certificateDate;
	/**
	 * 备注
	 */
	private String remark;
	/**
	 * 车牌
	 */
	private String licenseNo;
	/**
	 * 无
	 */
	private String priceType;
	/**
	 * 无
	 */
	private String certificateType;
	/**
	 * 无
	 */
	private String fuelType;
	/**
	 * 原始oracle中的id，用于数据迁移
	 */
	private Long oldId;
	/**
	 * 选中状态
	 */
	private Boolean selectStatus;

	/**
	 * ECustomerID
	 */
	private Long customerId;

	@Schema(description = "车主证件类型,01-身份证")
	private String idType;

	@Schema(description = "车主证件号")
	private String idNo;

	@Schema(description = "车主姓名")
	private String ownerName;

	@Schema(description = "投保地区")
	private String insuredArea;

}
